package com.bajiao.vo.store;

import com.alibaba.fastjson.annotation.JSONField;
import com.bajiao.common.aspect.annotation.Dict;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

@Data
@ApiModel("StoreApplyAdmin")
public class StoreApplyAdmin {

    @ApiModelProperty(value = "主键", required = true, position = 0)
    private String id;

    @ApiModelProperty(value = "1-个人 2-企业", required = true, position = 10)
    @Excel(name = "入驻类型", width = 15, replace={"个人_1","企业_2"})
    private Integer type;

    @ApiModelProperty(value = "用户id", required = true, position = 20)
    private String userId;

    @Excel(name = "店铺名称", width = 20)
    @ApiModelProperty(value = "店铺名称", required = true, position = 30)
    private String title;

    @ApiModelProperty(value = "门头照", required = true, position = 40)
    private String mainImage;

    @ApiModelProperty(value = "店铺logo", required = true, position = 50)
    private String logoImage;

    @ApiModelProperty(value = "店内图片", required = true, position = 60)
    private String insideImages;

    @Excel(name = "开店时间", width = 20, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @JSONField(format = "yyyy-MM-dd")
    @ApiModelProperty(value = "开店时间", required = true, position = 70)
    private Date openDate;

    @ApiModelProperty(value = "行业id", required = true, position = 80)
    @Dict(dictTable ="tb_industry",dicText = "title",dicCode = "id")
    @Excel(name = "行业", width = 15, dictTable = "tb_industry",dicCode = "id",dicText = "title")
    private String industryId;

    @Excel(name = "店铺所在省", width = 20)
    @ApiModelProperty(value = "店铺所在省")
    private String province;

    @ApiModelProperty(value = "店铺所在省编码")
    private String provinceCode;

    @Excel(name = "店铺所在城市", width = 20)
    @ApiModelProperty(value = "店铺所在城市")
    private String city;

    @ApiModelProperty(value = "店铺所在城市编码")
    private String cityCode;

    @Excel(name = "店铺所在区/县", width = 20)
    @ApiModelProperty(value = "店铺所在区/县")
    private String district;

    @ApiModelProperty(value = "店铺所在区/县编码")
    private String districtCode;

    @Excel(name = "店铺地址", width = 20)
    @ApiModelProperty(value = "店铺地址", required = true, position = 90)
    private String address;

    @ApiModelProperty(value = "经度", required = true, position = 100)
    private String longitude;

    @ApiModelProperty(value = "纬度", required = true, position = 110)
    private String latitude;

    @Excel(name = "店铺联系电话", width = 15)
    @ApiModelProperty(value = "店铺联系电话", required = true, position = 120)
    private String storeMobile;

    @Excel(name = "店铺简介", width = 50)
    @ApiModelProperty(value = "简介", required = true, position = 130)
    private String intro;

    @Excel(name = "法人名称", width = 20)
    @ApiModelProperty(value = "法人名称", required = true, position = 250)
    private String legalPerson;

    @Excel(name = "身份证号", width = 30)
    @ApiModelProperty(value = "身份证号", required = true, position = 260)
    private String idCard;

    @Excel(name = "身份证类型", width = 15, replace={"长期_1","非长期_2"})
    @ApiModelProperty(value = "身份证类型", required = true, position = 270)
    private Integer idCardType;

    @Excel(name = "身份证生效时间", width = 20, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @JSONField(format = "yyyy-MM-dd")
    @ApiModelProperty(value = "身份证生效时间", required = true, position = 280)
    private Date idCardStartDate;

    @Excel(name = "身份证失效时间", width = 20, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @JSONField(format = "yyyy-MM-dd")
    @ApiModelProperty(value = "身份证失效时间", required = true, position = 290)
    private Date idCardEndDate;

    @ApiModelProperty(value = "身份证正面", required = true, position = 300)
    private String idCardFrontImage;

    @ApiModelProperty(value = "身份证反面", required = true, position = 310)
    private String idCardBackImage;

    @Excel(name = "联系电话", width = 20)
    @ApiModelProperty(value = "联系电话", required = true, position = 320)
    private String mobile;

    @Excel(name = "邮箱号", width = 20)
    @ApiModelProperty(value = "邮箱号", required = true, position = 330)
    private String email;

    @ApiModelProperty(value = "内景照片", required = true, position = 340)
    private String interiorImage;

    @ApiModelProperty(value = "前台照片", required = true, position = 350)
    private String receptionImage;

    @Excel(name = "申请时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间", required = true, position = 360)
    private Date createTime;

    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间", required = true, position = 370)
    private Date updateTime;

    @Excel(name = "状态", width = 15, replace={"0_待审核","审核通过_1","驳回_2"})
    @ApiModelProperty(value = "状态 0-待审核 1-审核通过 2-驳回", required = true, position = 380)
    private Integer status;

    @Excel(name = "公司名称", width = 20)
    @ApiModelProperty(value = "公司名称", required = true, position = 140)
    private String companyName;

    @Excel(name = "公司介绍", width = 50)
    @ApiModelProperty(value = "公司介绍", required = true, position = 150)
    private String companyIntro;

    @Excel(name = "行业名称", width = 15)
    @ApiModelProperty(value = "行业名称", required = true, position = 160)
    private String industryName;

    @ApiModelProperty(value = "营业执照", required = true, position = 170)
    private String licenseImage;

    @Excel(name = "营业执照编号", width = 20)
    @ApiModelProperty(value = "营业执照编号", required = true, position = 180)
    private String licenseNumber;

    @Excel(name = "营业执照类型", width = 15, replace={"0_待审核","长期_1","非长期_2"})
    @ApiModelProperty(value = "营业执照类型 1-长期 2-非长期", required = true, position = 190)
    private Integer licenseType;

    @Excel(name = "营业执照生效时间", width = 20, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @JSONField(format = "yyyy-MM-dd")
    @ApiModelProperty(value = "营业执照生效时间", required = true, position = 200)
    private Date licenseStartDate;

    @Excel(name = "营业执照失效时间", width = 20, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @JSONField(format = "yyyy-MM-dd")
    @ApiModelProperty(value = "营业执照失效时间", required = true, position = 210)
    private Date licenseEndDate;

    @Excel(name = "成立时间", width = 20, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @JSONField(format = "yyyy-MM-dd")
    @ApiModelProperty(value = "成立时间", required = true, position = 220)
    private Date foundDate;

    @Excel(name = "公司注册地/商户市区", width = 30)
    @ApiModelProperty(value = "公司注册地/商户市区", required = true, position = 230)
    private String registerAddress;

    @Excel(name = "公司所在地/商户详细地址", width = 30)
    @ApiModelProperty(value = "公司所在地/商户详细地址", required = true, position = 240)
    private String companyAddress;

    @ApiModelProperty(value = "商户id")
    private String storeId;
}
